Efecto de la adopción de trombectomía primaria en la reducción de mortalidad por ictus isquémico

Jaime Pinilla

Universidad de Las Palmas de Gran Canaria

Zaragoza 23 de mayo de 2019

Las 7 V de un sistema Big-Data

FigName

Grandes retos de la utilización de datos masivos

1. Volumen de información
2. Velocidad de generación de datos
3. Variedad de datos
4. Veracidad de los datos
5. Viabilidad del uso de los datos
6. Visualización de los datos
7. Valor de los datos: datos que se transforman en información, conocimiento, acción y decisión

Las 7 V de un sistema Big-Data

FigName

Grandes retos de la utilización de datos masivos

1. Volumen de información
2. Velocidad de generación de datos
3. Variedad de datos

4. Veracidad de los datos
5. Visualización de los datos
6. Viabilidad del uso de los datos
7. Valor de los datos: datos que se transforman en información, conocimiento, acción y decisión

Conjunto Mínimo Básico de Datos

- Hospitalización (CMBD-H)

Información administrativa y clínica de los pacientes ingresados en unidades de hospitalización, la cual es recogida y codificada sistemáticamente en los hospitales, para cada episodio de hospitalización, al alta del paciente.

Los registros de alta son enviados al Ministerio por las comunidades autónomas, de acuerdo con el modelo de datos establecido al efecto por acuerdo del Consejo Interterritorial.

Datos normalizados desde 1997 hasta 2015 inclusive de todos los hospitales de agudos del Sistema Nacional de Salud.

Las variables de consulta incluyen las básicas sobre edad y sexo del paciente, del episodio (tipo de ingreso y alta) y variables clínicas (sobre diagnósticos y procedimientos) a las que se añaden otras derivadas del uso de sistemas de clasificación de pacientes.

Objetivo

Presentar las oportunidades que ofrece el CMBD en la investigación en servicios sanitarios.

Tipo de pregunta de investigación

Efecto de la adopción de trombectomía primaria en la tasa de mortalidad por accidente cerebrovascular agudo (Indicador de calidad IQI 17).

Datos

Datos individuales de ingresos hospitalarias ente Enero de 2003 y diciembre de 2015.

Pacientes que ingresan con diagnóstico principal ictus isquémico

Pacientes incluidos en el estudio

Flowchart of the patient population meeting inclusion criteria for the study

Flowchart of the patient population meeting inclusion criteria for the study

Variables del modelo

Variable Year.2003 Year.2006 Year.2009 Year.2012 Year.2015 p_value
Number of admissions 13,209 13,686 15,459 17,029 17,858 <0.001
In-hospital mortality 1,715 1,669 1,763 1,837 1,884 <0.001
Age, year (SD) 73.68 (12.16) 73.52 (12.74) 73.75 (13.03) 74.33 (13.10) 74.09 (13.44) <0.001
Gender, female (%) 46.65 46.66 47.04 47.68 46.26 0.182
Public holiday admission (%) 26.81 27.06 27.00 27.59 27.37 0.15
Congestive heart failure (%) 4.06 4.13 4.52 5.38 5.40 <0.001
Pulmonary circulation disease (%) 1.02 1.21 1.63 1.80 2.10 <0.001
Chronic pulmonary disease (%) 9.58 8.28 8.29 9.29 9.42 0.456
Renal failure (%) 2.86 3.43 5.60 6.82 7.90 <0.001
Lymphoma (%) 0.23 0.32 0.34 0.30 0.43 0.006
Metastatic cancer (%) 0.95 1.12 1.18 1.35 1.44 <0.001
Coagulopathy (%) 0.62 0.69 0.72 1.30 1.25 <0.001
Fluid and electrolyte disorders (%) 1.49 1.45 1.88 2.35 2.84 <0.001
Drug abuse (%) 0.27 0.58 0.71 0.65 0.82 <0.001
Endovascular treatment (%) 0.51 2.48 6.90 11.98 15.39 <0.001

5. VISUALIZACIÓN: encontrar patrones y claves a investigar

Evolución temporal de los ingresos por ictus isquémico

Descomposición de la serie temporal de ingresos por ictus isquémico

Modelización: Modelos de respuesta binaria

Nuestra variable endógena Y representa la Mortalidad en el hospital y sólo puede tomar dos valores, que codificamos como \(1\)= alta exitus y 0 para el resto. La distribución de Y es una Bernoulli cuya esperanza es:

\[E[Y]=P[Y=1]=p (0<p<1)\]

Sea X una posible variable predictora de Y, entonces la distribución condicional de Y sobre un valor de X = x, también sigue una distribución de Bernoulli de forma que la esperanza condicionada de Y sobre X = x es:

\[ E[Y |X = x] = P [Y = 1 |X = x] = p(x) \] y la varianza condicionada

\[ Var[Y |X = x] = p(x)·(1-p(x)) \]

Podemos formular el modelo para Y en función de X si para su estimación utilizmamos una regresión lineal clásica. El modelo quedaría como: \[ Y = \alpha + \beta x + \epsilon(x) \] donde los errores son variables aleatorias independientes con esperanza 0 que distribuyen con una Bernoulli.

Esta estimación se corresponde con el denominado modelo de probabilidad lineal.

Modelo de probabilidad lineal

## 
## Call:
## lm(formula = Yvar ~ Age + Pub.Hol + chf + pulmcirc + chrnlung + 
##     renlfail + lymph + mets + coag + lytes + procedure + Trend + 
##     as.factor(Season), data = df)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.65022 -0.13556 -0.10068 -0.04202  1.12254 
## 
## Coefficients:
##                       Estimate Std. Error t value Pr(>|t|)    
## (Intercept)         -1.600e-01  4.779e-03 -33.481  < 2e-16 ***
## Age                  3.903e-03  5.410e-05  72.142  < 2e-16 ***
## Pub.Hol1             4.652e-03  1.554e-03   2.994 0.002754 ** 
## chf1                 1.378e-01  3.314e-03  41.571  < 2e-16 ***
## pulmcirc1            6.680e-02  5.564e-03  12.006  < 2e-16 ***
## chrnlung1            1.046e-02  2.417e-03   4.326 1.52e-05 ***
## renlfail1            3.742e-02  3.070e-03  12.187  < 2e-16 ***
## lymph1               2.586e-02  1.215e-02   2.127 0.033381 *  
## mets1                2.149e-01  6.214e-03  34.589  < 2e-16 ***
## coag1                4.233e-02  7.359e-03   5.753 8.80e-09 ***
## lytes1               1.513e-01  5.056e-03  29.932  < 2e-16 ***
## procedure1           2.345e-02  2.658e-03   8.824  < 2e-16 ***
## Trend               -2.781e-04  1.583e-05 -17.565  < 2e-16 ***
## as.factor(Season)2  -8.248e-03  3.382e-03  -2.439 0.014746 *  
## as.factor(Season)3  -5.783e-03  3.305e-03  -1.750 0.080203 .  
## as.factor(Season)4  -1.139e-02  3.352e-03  -3.399 0.000676 ***
## as.factor(Season)5  -1.745e-02  3.324e-03  -5.250 1.53e-07 ***
## as.factor(Season)6  -1.607e-02  3.343e-03  -4.808 1.53e-06 ***
## as.factor(Season)7  -2.104e-02  3.345e-03  -6.290 3.19e-10 ***
## as.factor(Season)8  -1.356e-02  3.384e-03  -4.006 6.19e-05 ***
## as.factor(Season)9  -1.818e-02  3.393e-03  -5.358 8.44e-08 ***
## as.factor(Season)10 -1.219e-02  3.330e-03  -3.660 0.000252 ***
## as.factor(Season)11 -1.242e-02  3.325e-03  -3.736 0.000187 ***
## as.factor(Season)12 -4.834e-03  3.294e-03  -1.467 0.142255    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.3081 on 198837 degrees of freedom
## Multiple R-squared:  0.05418,    Adjusted R-squared:  0.05407 
## F-statistic: 495.2 on 23 and 198837 DF,  p-value: < 2.2e-16

Poder explicativo: Modelo estandarizado

Variables Coeff.est Variables.continuacion Coeff.esti
Age 0.159739199 Coagulopathy 0.012568462
Congestive heart failure 0.092006278 Aug -0.011546077
Metastatic cancer 0.075564027 Nov -0.010924643
Fluid and electrolyte disorders 0.065634436 Oct -0.010686706
Trend -0.039305639 Apr -0.009859374
Renal failure 0.026857163 Chronic pulmonary disease 0.009456179
Pulmonary circulation disease 0.026347108 Feb -0.007028169
Trombechtomic procedure 0.019652806 Public Holiday 0.006537678
Jul -0.018286712 Mar -0.005129385
Sep -0.015421203 Lymphoma 0.00464123
May -0.015325542 Dec -0.004318502
Jun -0.013986073

Hipótesis de Normalidad y Homocedasticidad

Alternativa: Modelos Lineales Generalizados (GLM)

Los GLM’s tienen tres componentes.

  1. La componente aleatoria.
  2. El predictor lineal, que no es más que la función lineal de las variables explicativas.
  3. La función de enlace o link, función que especifica la relación entre la esperanza condicionada de \(Y\) y el predictor lineal.

Los modelos logit son modelos GLM dónde la distribución de la variable \(Y\) es binomial y la función de enlace es la función logística. Si llamamos \(\mu=P(Y=1)\) el modelo queda especificado como:

\[logit[\mu]=log\left(\frac{\mu}{1-\mu}\right)=\alpha+\beta_1x_1+...+\beta_px_p\] Estimemos un modelo logit sobre nuestros datos…

Estimación logit

## 
## Call:
## glm(formula = Yvar ~ Age + Pub.Hol + chf + pulmcirc + chrnlung + 
##     renlfail + lymph + mets + coag + lytes + procedure + Trend + 
##     as.factor(Season), family = binomial, data = df)
## 
## Deviance Residuals: 
##     Min       1Q   Median       3Q      Max  
## -1.9361  -0.5279  -0.4252  -0.2889   3.2872  
## 
## Coefficients:
##                       Estimate Std. Error z value Pr(>|z|)    
## (Intercept)         -6.0150072  0.0643860 -93.421  < 2e-16 ***
## Age                  0.0536551  0.0007471  71.814  < 2e-16 ***
## Pub.Hol1             0.0468726  0.0162532   2.884 0.003928 ** 
## chf1                 0.8670417  0.0254485  34.070  < 2e-16 ***
## pulmcirc1            0.5086507  0.0457789  11.111  < 2e-16 ***
## chrnlung1            0.1306847  0.0238028   5.490 4.01e-08 ***
## renlfail1            0.3140673  0.0276331  11.366  < 2e-16 ***
## lymph1               0.2745295  0.1142550   2.403 0.016271 *  
## mets1                1.5834171  0.0460269  34.402  < 2e-16 ***
## coag1                0.4000333  0.0671150   5.960 2.52e-09 ***
## lytes1               0.9359007  0.0378296  24.740  < 2e-16 ***
## procedure1           0.3062087  0.0280336  10.923  < 2e-16 ***
## Trend               -0.0032780  0.0001684 -19.467  < 2e-16 ***
## as.factor(Season)2  -0.0787613  0.0345572  -2.279 0.022658 *  
## as.factor(Season)3  -0.0512318  0.0336684  -1.522 0.128095    
## as.factor(Season)4  -0.1080770  0.0345659  -3.127 0.001768 ** 
## as.factor(Season)5  -0.1734149  0.0346828  -5.000 5.73e-07 ***
## as.factor(Season)6  -0.1642029  0.0349081  -4.704 2.55e-06 ***
## as.factor(Season)7  -0.2152187  0.0353821  -6.083 1.18e-09 ***
## as.factor(Season)8  -0.1373768  0.0351576  -3.907 9.33e-05 ***
## as.factor(Season)9  -0.1899614  0.0356987  -5.321 1.03e-07 ***
## as.factor(Season)10 -0.1214997  0.0343838  -3.534 0.000410 ***
## as.factor(Season)11 -0.1224585  0.0343525  -3.565 0.000364 ***
## as.factor(Season)12 -0.0472429  0.0334433  -1.413 0.157765    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## (Dispersion parameter for binomial family taken to be 1)
## 
##     Null deviance: 140416  on 198860  degrees of freedom
## Residual deviance: 129666  on 198837  degrees of freedom
## AIC: 129714
## 
## Number of Fisher Scoring iterations: 5

Odds ratios

## 
## Attaching package: 'MASS'
## The following object is masked from 'package:plotly':
## 
##     select
## Waiting for profiling to be done...
##                             2.5 % 97.5 %
## (Intercept)         0.0024 0.0022 0.0028
## Age                 1.0551 1.0536 1.0567
## Pub.Hol1            1.0480 1.0151 1.0819
## chf1                2.3799 2.2638 2.5013
## pulmcirc1           1.6630 1.5194 1.8181
## chrnlung1           1.1396 1.0875 1.1938
## renlfail1           1.3690 1.2965 1.4448
## lymph1              1.3159 1.0462 1.6381
## mets1               4.8716 4.4496 5.3296
## coag1               1.4919 1.3059 1.6990
## lytes1              2.5495 2.3666 2.7450
## procedure1          1.3583 1.2853 1.4346
## Trend               0.9967 0.9964 0.9971
## as.factor(Season)2  0.9243 0.8637 0.9890
## as.factor(Season)3  0.9501 0.8894 1.0148
## as.factor(Season)4  0.8976 0.8387 0.9604
## as.factor(Season)5  0.8408 0.7855 0.8999
## as.factor(Season)6  0.8486 0.7924 0.9086
## as.factor(Season)7  0.8064 0.7523 0.8642
## as.factor(Season)8  0.8716 0.8135 0.9338
## as.factor(Season)9  0.8270 0.7710 0.8869
## as.factor(Season)10 0.8856 0.8278 0.9473
## as.factor(Season)11 0.8847 0.8271 0.9463
## as.factor(Season)12 0.9539 0.8933 1.0185

Rendimiento del modelo logit

- AIC (Criterio de información de Akaike):

métrica análoga al \(R^2\) ajustado. Siempre preferimos el modelo con un valor mínimo de AIC.

- Null Deviance y Residual Deviance:

suma de los cuadrados de los residuos de la devianza en el modelo con solo constante y en el modelo con covariables respectivamente. Cuando menor valor mejor es el modelo.

- Valores observados vs. predichos:

porcentaje de observaciones correctamente predicas;
sensibilidad;
especificidad
área bajo la curva ROC.

Medidas de bondad del ajuste

## [1] "AIC 129714.2708"
## [1] "RsqrMcFadden 0.0766"
## [1] "Residual deviance 129666.2708"
##    
##        FALSE     TRUE
##   0 0.549977 0.336873
##   1 0.035945 0.077205
## [1] "Accuracy 0.6272"
## [1] "Sensibilidad 0.6823"
## [1] "Especificidad 0.6201"
## [1] "Area under the ROC curve"
## [1] "Area under the ROC curve"
## [1] 0.70698

Aportación de cada variable a la reducción de la deviance

## Analysis of Deviance Table
## 
## Model: binomial, link: logit
## 
## Response: Yvar
## 
## Terms added sequentially (first to last)
## 
## 
##                   Df Deviance Resid. Df Resid. Dev Pr(>Chi)    
## NULL                             198860     140416             
## Age                1     7210    198859     133205  < 2e-16 ***
## Pub.Hol            1        7    198858     133198   0.0065 ** 
## chf                1     1247    198857     131951  < 2e-16 ***
## pulmcirc           1      126    198856     131825  < 2e-16 ***
## chrnlung           1       35    198855     131790  4.0e-09 ***
## renlfail           1      107    198854     131684  < 2e-16 ***
## lymph              1        6    198853     131678   0.0158 *  
## mets               1      957    198852     130721  < 2e-16 ***
## coag               1       32    198851     130689  1.3e-08 ***
## lytes              1      508    198850     130181  < 2e-16 ***
## procedure          1       48    198849     130132  3.5e-12 ***
## Trend              1      393    198848     129739  < 2e-16 ***
## as.factor(Season) 11       72    198837     129666  4.1e-11 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Slide with Bullets

https://uc-r.github.io/logistic_regression

Número de ingresos versus tasa de mortalidad